Add LLCC support for Nord - #992
Merged
Shiraz Hashim (shashim-quic) merged 3 commits intoAug 21, 2026
Merged
Conversation
added 3 commits
August 20, 2026 17:52
Add the system cache controller. All sixteen banks are listed, four per DDR slice at 0x100000 strides from slice + 0x800000, followed by the global broadcast OR/AND regions, which the driver expects at the reg indices right after the last bank. No ECC interrupt is described, as the Nord interrupt map does not expose one for the LLCC. The driver treats it as optional. Signed-off-by: Anurag Pateriya <anurag.pateriya@oss.qualcomm.com>
Add the sub-cache table for Nord, derived from the Nord AU (Safe IVI) SCT table and limited to the POR use cases that have a unique SCID and a usecase ID in llcc-qcom.h. Nord has the CFG0/CFG1 pairs and the full ALGO_ALLOC0..3 set, so it uses the v6 register offsets. num_banks is set explicitly because LLCC_LB_CNT in LLCC_COMMON_STATUS0 is four bits wide and cannot report sixteen banks; a wrong count makes the driver map a bank aperture in place of the broadcast region and abort on the first broadcast read. no_edac is set because the bootloader leaves the LLCC EDAC registers locked, as on Glymur. Signed-off-by: Anurag Pateriya <anurag.pateriya@oss.qualcomm.com>
Nord has four DDR slices with four MACH9 LLCC banks each, so it exposes sixteen bank regions plus the shared broadcast OR/AND pair. Add its compatible with a matching reg/reg-names group and raise the top level maxItems to eighteen. Signed-off-by: Anurag Pateriya <anurag.pateriya@oss.qualcomm.com>
apateriy-qcom
force-pushed
the
nord_staging_llcc
branch
from
August 20, 2026 12:22
f89974d to
9b7f0f1
Compare
Shiraz Hashim (shashim-quic)
approved these changes
Aug 21, 2026
Shiraz Hashim (shashim-quic)
merged commit Aug 21, 2026
8c79e2d
into
qualcomm-linux:staging/nord
1 of 2 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Enables the last level cache controller (system cache) on Nord: DT binding,
driver configuration, and the SoC DT node.
Nord's LLCC has four DDR slices with four banks each, so sixteen bank regions
plus the shared broadcast pair. Same layout Glymur already uses.
Patches
Notes
to the POR use cases that have a unique SCID.
avoid aborts on this target. Details are in the commit messages.